package com.lzy.cloud.ticket.admission.service;

import com.lzy.cloud.ticket.admission.dtos.*;
import com.lzy.cloud.ticket.admission.dtos.ScenicInfoDto;
import com.lzy.framework.core.output.Result;

/**
 * Created by WIN7 on 2018/6/13.
 */
public interface TicketService {

    /**
     * 门票：景点列表查询
     */
    Result scenicList(SelectTicketListListDto selectTicketListListDto);

    /**
     * 门票：景点详情
     */
    Result scenicDetail(ScenicDetailDto scenicDetailDto);

    /**
     * 门票：门票详情
     */
    Result detail(SelectTicketDetailDto selectTicketDetailDto);

    /**
     * 门票：创建订单(新)
     */
    Result createOrderNew(String request);

    /**
     * 门票：取消订单
     */
    Result cancelOrder(String request);

    /**
     * 门票：出票（代扣）
     */
    void submitOrder(SubmitTicketDto submitTicketDto);

    /**
     * 门票：订单详情
     */
    Result orderDetail(String request);

    /**
     * 门票：订单状态
     */
    Result orderStatus(String request);

    /**
     * 门票：退票申请
     */
    void refundOrder(String apiKey, String secretKey);

    /**
     * 门票：门票核销查询
     */
    Result verifyOrder(String request);

    /**
     * 门票：特权门票查询
     */
    void privilegeTicketList(String apiKey, String secretKey);

    /**
     * 查询门票是否可退
     */
    Result canRefundTicket(String request);

    /**
     * 在线退票申请
     */
    Result onLineRefund(String request);
}
